home *** CD-ROM | disk | FTP | other *** search
/ Ray Dream Studio 5 / Ray Dream.iso / pc / DreamSDK / Windows / SAMPLES / IMPORTER / IMP / COMIMP.H < prev    next >
Encoding:
C/C++ Source or Header  |  1997-07-11  |  2.1 KB  |  68 lines

  1. /* $Id: COMImp.h 1.6 1997/05/21 18:28:46 damien Exp $ */
  2.  
  3. // Copyright © 1990-1995 Ray Dream, Inc. All rights reserved.
  4.  
  5. #ifndef __COMIMP__
  6. #define __COMIMP__
  7.  
  8. #ifndef __I3DEXIO__
  9. #include "I3DExIO.h"
  10. #endif
  11.  
  12. #ifndef __IMPDATA__
  13. #include "IMPData.h"
  14. #endif
  15.  
  16. struct IShFileStream;
  17. struct I3DShScene;
  18. struct I3DShTreeElement;
  19. struct I3DShObject;
  20.  
  21. //DEFINE_GUID(CLSID_DxfOut, 0x5C9601ABL, 0x7CC3, 0x101C, 0x88, 0x5F, 0x04, 0x02, 0x1C, 0x00, 0x70, 0x02);
  22. //DEFINE_GUID(CLSID_DxfIn, 0x5C9601AAL, 0x7CC3, 0x101C, 0x88, 0x5F, 0x04, 0x02, 0x1C, 0x00, 0x70, 0x02);
  23. // {395C54E0-EED9-11cf-9A2C-0020AF28193A}
  24. DEFINE_GUID(CLSID_EasyIn, 0x395c54e0, 0xEED9, 0x11CF, 0x9A, 0x2C, 0x00, 0x20, 0xAF, 0x28, 0x19, 0x3A);
  25.  
  26.  
  27. #undef INTERFACE
  28. #define INTERFACE TEasyImporter
  29. class TEasyImporter : public I3DExImportFilter {
  30. public:
  31.     TEasyImporter();
  32.     ~TEasyImporter();
  33.  
  34.     // IUnknown Interface :
  35.     STDMETHODIMP                 QueryInterface(THIS_ REFIID riid, LPVOID* ppvObj);
  36.     STDMETHODIMP_(ULONG) AddRef(THIS);
  37.     STDMETHODIMP_(ULONG) Release(THIS);
  38.  
  39.     // I3DExtension method :
  40.     STDMETHODIMP_(I3DExtension*) Clone(THIS);
  41.     STDMETHODIMP                                 ShellUtilitiesInit(THIS_ IShUtilities* shellUtilities);
  42.  
  43.     // I3DExDataExchanger methods :
  44.     STDMETHODIMP_(ExtensionDataMap*) GetExtensionDataMap(THIS);
  45.     STDMETHODIMP_(void*)                         GetExtensionDataBuffer(THIS);
  46.     STDMETHODIMP                                         ExtensionDataChanged(THIS);
  47.     STDMETHODIMP                                         HandleEvent(THIS_ ULONG sourceD);
  48.     STDMETHODIMP_(short)                         GetResID(THIS);
  49.  
  50.     // I3DExImportFilter
  51.     STDMETHODIMP_(BOOLEAN) Prepare(THIS_ char* fullPathName, I3DShScene* scene, I3DShTreeElement* fatherTree);
  52.     STDMETHODIMP_(BOOLEAN) WantsOptionDialog(THIS);
  53.     STDMETHODIMP DoImport(THIS_ char* fullPathName, I3DShScene* scene, I3DShTreeElement* fatherTree);
  54.     STDMETHODIMP_(BOOLEAN) WantsTopScene(THIS);
  55.  
  56. protected:
  57.     void StartProgress(IShFileStream* afile);
  58.     void DoReadEasyFile(IShFileStream* stream, I3DShScene* scene, I3DShTreeElement* topTree);
  59.     TfData            fData;
  60.  
  61.     I3DShScene*    fScene;
  62.     long                fProgressMax;
  63.     
  64. private:
  65.     ULONG                fCRef;
  66.     };
  67.  
  68. #endif